home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / sbin / cryptdisks_stop < prev    next >
Text File  |  2009-10-14  |  1KB  |  44 lines

  1. #!/bin/sh
  2.  
  3. # cryptdisks_stop - wrapper around cryptsetup which parses
  4. # /etc/crypttab, just like mount parses /etc/fstab.
  5.  
  6. # Initial code stolen from cryptdisks_start by Jon Dowland <jon@alcopop.org>
  7. # Copyright (C) 2008 by Jonas Meurer <jonas@freesources.org>
  8. # License: GNU General Public License, v2 or any later
  9. # (http://www.gnu.org/copyleft/gpl.html)
  10.  
  11. set -e
  12.  
  13. if [ $# -lt 1 ]; then
  14.     echo "usage: $0 <name>" >&2
  15.     echo >&2
  16.     echo "reads /etc/crypttab and stops the mapping corresponding to <name>" >&2
  17.     exit 1
  18. fi
  19.  
  20. if [ -r /lib/cryptsetup/cryptdisks.functions ]; then
  21.     . /lib/cryptsetup/cryptdisks.functions
  22. else
  23.     exit 0
  24. fi
  25.  
  26. LOUD="yes"
  27.  
  28. log_action_begin_msg "Stopping crypto disk"
  29.  
  30. found="no"
  31. egrep -v "^[[:space:]]*(#|$)" "$TABFILE" | while read dst src key opts; do
  32.     if [ "$1" = "$dst" ]; then
  33.         found="yes"
  34.         handle_crypttab_line_stop "$dst" "$src" "$key" "$opts" <&3
  35.         exit 0
  36.     fi
  37. done 3<&1
  38.  
  39. if [ "$found" = "no" ]; then
  40.     device_msg "$1" "failed, not found in crypttab"
  41. fi
  42.  
  43. log_action_end_msg 0
  44.